package com.snline.crm.logistics.dao.inter;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.snline.crm.logistics.entity.ProjectInfo;
import com.snline.crm.logistics.entity.ProjectTrack;
import com.snline.crm.logistics.entity.ProjectUserInfo;

/**
 * 进度信息
 * @author sxy
 *
 */
@Repository
public interface ITrackMapper {


    /**
     * 得到指定数据
     * @param trackId
     * @return
     */
    public ProjectTrack selectTrack(String trackId);
    
    /**
     * 进度信息
     * @param userId 用户ID
     * @return 进度信息
     */
    public List<ProjectTrack> selectProjectTrack(String userId);
    

    /**
     * 进度信息
     * @param userId 用户ID
     * @param statusFlg 状态
     * @return 进度信息
     */
    public List<ProjectTrack> selectProjectTrackStats(@Param(value="userId") String userId, @Param(value="statusFlg")String statusFlg, @Param(value="page")int page);
    
    /**
     * 项目的插入
     * @param projectTrack 项目插入内容
     * @return
     */
    public int insert(ProjectTrack projectTrack);
    
    /**
     * 进度的百分比和时间的修改
     * @param projectTrack
     * @return
     */
    public int UpdateTrack(ProjectTrack projectTrack);
    
    /**
     * 负责人修改进度
     * @param projectTrack
     * @return
     */
    public int updateByAdmin (ProjectTrack projectTrack);
    
    /**
     * 手动消除此类内荣
     * @param trackId
     * @return
     */
    public int delTrack(String trackId);
    
    /**
     * 取得所有的项目名称
     * @return
     */
    public List<ProjectInfo> selectProjectInfos();
    
    /**
     * 取得所有的用户名称
     * @return
     */
    public List<ProjectUserInfo> selectProjectUserInfos();
}
